↳ Prolog
↳ PrologToPiTRSProof
↳ PrologToPiTRSProof
tree_member_in_ga(X, tree(X, X1, X2)) → tree_member_out_ga(X, tree(X, X1, X2))
tree_member_in_ga(X, tree(X1, Left, X2)) → U1_ga(X, X1, Left, X2, tree_member_in_ga(X, Left))
tree_member_in_ga(X, tree(X1, X2, Right)) → U2_ga(X, X1, X2, Right, tree_member_in_ga(X, Right))
U2_ga(X, X1, X2, Right, tree_member_out_ga(X, Right)) → tree_member_out_ga(X, tree(X1, X2, Right))
U1_ga(X, X1, Left, X2, tree_member_out_ga(X, Left)) → tree_member_out_ga(X, tree(X1, Left, X2))
Infinitary Constructor Rewriting Termination of PiTRS implies Termination of Prolog
↳ Prolog
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PrologToPiTRSProof
tree_member_in_ga(X, tree(X, X1, X2)) → tree_member_out_ga(X, tree(X, X1, X2))
tree_member_in_ga(X, tree(X1, Left, X2)) → U1_ga(X, X1, Left, X2, tree_member_in_ga(X, Left))
tree_member_in_ga(X, tree(X1, X2, Right)) → U2_ga(X, X1, X2, Right, tree_member_in_ga(X, Right))
U2_ga(X, X1, X2, Right, tree_member_out_ga(X, Right)) → tree_member_out_ga(X, tree(X1, X2, Right))
U1_ga(X, X1, Left, X2, tree_member_out_ga(X, Left)) → tree_member_out_ga(X, tree(X1, Left, X2))
TREE_MEMBER_IN_GA(X, tree(X1, Left, X2)) → U1_GA(X, X1, Left, X2, tree_member_in_ga(X, Left))
TREE_MEMBER_IN_GA(X, tree(X1, Left, X2)) → TREE_MEMBER_IN_GA(X, Left)
TREE_MEMBER_IN_GA(X, tree(X1, X2, Right)) → U2_GA(X, X1, X2, Right, tree_member_in_ga(X, Right))
TREE_MEMBER_IN_GA(X, tree(X1, X2, Right)) → TREE_MEMBER_IN_GA(X, Right)
tree_member_in_ga(X, tree(X, X1, X2)) → tree_member_out_ga(X, tree(X, X1, X2))
tree_member_in_ga(X, tree(X1, Left, X2)) → U1_ga(X, X1, Left, X2, tree_member_in_ga(X, Left))
tree_member_in_ga(X, tree(X1, X2, Right)) → U2_ga(X, X1, X2, Right, tree_member_in_ga(X, Right))
U2_ga(X, X1, X2, Right, tree_member_out_ga(X, Right)) → tree_member_out_ga(X, tree(X1, X2, Right))
U1_ga(X, X1, Left, X2, tree_member_out_ga(X, Left)) → tree_member_out_ga(X, tree(X1, Left, X2))
↳ Prolog
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ PrologToPiTRSProof
TREE_MEMBER_IN_GA(X, tree(X1, Left, X2)) → U1_GA(X, X1, Left, X2, tree_member_in_ga(X, Left))
TREE_MEMBER_IN_GA(X, tree(X1, Left, X2)) → TREE_MEMBER_IN_GA(X, Left)
TREE_MEMBER_IN_GA(X, tree(X1, X2, Right)) → U2_GA(X, X1, X2, Right, tree_member_in_ga(X, Right))
TREE_MEMBER_IN_GA(X, tree(X1, X2, Right)) → TREE_MEMBER_IN_GA(X, Right)
tree_member_in_ga(X, tree(X, X1, X2)) → tree_member_out_ga(X, tree(X, X1, X2))
tree_member_in_ga(X, tree(X1, Left, X2)) → U1_ga(X, X1, Left, X2, tree_member_in_ga(X, Left))
tree_member_in_ga(X, tree(X1, X2, Right)) → U2_ga(X, X1, X2, Right, tree_member_in_ga(X, Right))
U2_ga(X, X1, X2, Right, tree_member_out_ga(X, Right)) → tree_member_out_ga(X, tree(X1, X2, Right))
U1_ga(X, X1, Left, X2, tree_member_out_ga(X, Left)) → tree_member_out_ga(X, tree(X1, Left, X2))
↳ Prolog
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ PiDP
↳ UsableRulesProof
↳ PrologToPiTRSProof
TREE_MEMBER_IN_GA(X, tree(X1, Left, X2)) → TREE_MEMBER_IN_GA(X, Left)
TREE_MEMBER_IN_GA(X, tree(X1, X2, Right)) → TREE_MEMBER_IN_GA(X, Right)
tree_member_in_ga(X, tree(X, X1, X2)) → tree_member_out_ga(X, tree(X, X1, X2))
tree_member_in_ga(X, tree(X1, Left, X2)) → U1_ga(X, X1, Left, X2, tree_member_in_ga(X, Left))
tree_member_in_ga(X, tree(X1, X2, Right)) → U2_ga(X, X1, X2, Right, tree_member_in_ga(X, Right))
U2_ga(X, X1, X2, Right, tree_member_out_ga(X, Right)) → tree_member_out_ga(X, tree(X1, X2, Right))
U1_ga(X, X1, Left, X2, tree_member_out_ga(X, Left)) → tree_member_out_ga(X, tree(X1, Left, X2))
↳ Prolog
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ PiDP
↳ UsableRulesProof
↳ PiDP
↳ PiDPToQDPProof
↳ PrologToPiTRSProof
TREE_MEMBER_IN_GA(X, tree(X1, Left, X2)) → TREE_MEMBER_IN_GA(X, Left)
TREE_MEMBER_IN_GA(X, tree(X1, X2, Right)) → TREE_MEMBER_IN_GA(X, Right)
↳ Prolog
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ PiDP
↳ UsableRulesProof
↳ PiDP
↳ PiDPToQDPProof
↳ QDP
↳ NonTerminationProof
↳ PrologToPiTRSProof
TREE_MEMBER_IN_GA(X) → TREE_MEMBER_IN_GA(X)
TREE_MEMBER_IN_GA(X) → TREE_MEMBER_IN_GA(X)
tree_member_in_ga(X, tree(X, X1, X2)) → tree_member_out_ga(X, tree(X, X1, X2))
tree_member_in_ga(X, tree(X1, Left, X2)) → U1_ga(X, X1, Left, X2, tree_member_in_ga(X, Left))
tree_member_in_ga(X, tree(X1, X2, Right)) → U2_ga(X, X1, X2, Right, tree_member_in_ga(X, Right))
U2_ga(X, X1, X2, Right, tree_member_out_ga(X, Right)) → tree_member_out_ga(X, tree(X1, X2, Right))
U1_ga(X, X1, Left, X2, tree_member_out_ga(X, Left)) → tree_member_out_ga(X, tree(X1, Left, X2))
Infinitary Constructor Rewriting Termination of PiTRS implies Termination of Prolog
↳ Prolog
↳ PrologToPiTRSProof
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
tree_member_in_ga(X, tree(X, X1, X2)) → tree_member_out_ga(X, tree(X, X1, X2))
tree_member_in_ga(X, tree(X1, Left, X2)) → U1_ga(X, X1, Left, X2, tree_member_in_ga(X, Left))
tree_member_in_ga(X, tree(X1, X2, Right)) → U2_ga(X, X1, X2, Right, tree_member_in_ga(X, Right))
U2_ga(X, X1, X2, Right, tree_member_out_ga(X, Right)) → tree_member_out_ga(X, tree(X1, X2, Right))
U1_ga(X, X1, Left, X2, tree_member_out_ga(X, Left)) → tree_member_out_ga(X, tree(X1, Left, X2))
TREE_MEMBER_IN_GA(X, tree(X1, Left, X2)) → U1_GA(X, X1, Left, X2, tree_member_in_ga(X, Left))
TREE_MEMBER_IN_GA(X, tree(X1, Left, X2)) → TREE_MEMBER_IN_GA(X, Left)
TREE_MEMBER_IN_GA(X, tree(X1, X2, Right)) → U2_GA(X, X1, X2, Right, tree_member_in_ga(X, Right))
TREE_MEMBER_IN_GA(X, tree(X1, X2, Right)) → TREE_MEMBER_IN_GA(X, Right)
tree_member_in_ga(X, tree(X, X1, X2)) → tree_member_out_ga(X, tree(X, X1, X2))
tree_member_in_ga(X, tree(X1, Left, X2)) → U1_ga(X, X1, Left, X2, tree_member_in_ga(X, Left))
tree_member_in_ga(X, tree(X1, X2, Right)) → U2_ga(X, X1, X2, Right, tree_member_in_ga(X, Right))
U2_ga(X, X1, X2, Right, tree_member_out_ga(X, Right)) → tree_member_out_ga(X, tree(X1, X2, Right))
U1_ga(X, X1, Left, X2, tree_member_out_ga(X, Left)) → tree_member_out_ga(X, tree(X1, Left, X2))
↳ Prolog
↳ PrologToPiTRSProof
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
TREE_MEMBER_IN_GA(X, tree(X1, Left, X2)) → U1_GA(X, X1, Left, X2, tree_member_in_ga(X, Left))
TREE_MEMBER_IN_GA(X, tree(X1, Left, X2)) → TREE_MEMBER_IN_GA(X, Left)
TREE_MEMBER_IN_GA(X, tree(X1, X2, Right)) → U2_GA(X, X1, X2, Right, tree_member_in_ga(X, Right))
TREE_MEMBER_IN_GA(X, tree(X1, X2, Right)) → TREE_MEMBER_IN_GA(X, Right)
tree_member_in_ga(X, tree(X, X1, X2)) → tree_member_out_ga(X, tree(X, X1, X2))
tree_member_in_ga(X, tree(X1, Left, X2)) → U1_ga(X, X1, Left, X2, tree_member_in_ga(X, Left))
tree_member_in_ga(X, tree(X1, X2, Right)) → U2_ga(X, X1, X2, Right, tree_member_in_ga(X, Right))
U2_ga(X, X1, X2, Right, tree_member_out_ga(X, Right)) → tree_member_out_ga(X, tree(X1, X2, Right))
U1_ga(X, X1, Left, X2, tree_member_out_ga(X, Left)) → tree_member_out_ga(X, tree(X1, Left, X2))
↳ Prolog
↳ PrologToPiTRSProof
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ PiDP
↳ UsableRulesProof
TREE_MEMBER_IN_GA(X, tree(X1, Left, X2)) → TREE_MEMBER_IN_GA(X, Left)
TREE_MEMBER_IN_GA(X, tree(X1, X2, Right)) → TREE_MEMBER_IN_GA(X, Right)
tree_member_in_ga(X, tree(X, X1, X2)) → tree_member_out_ga(X, tree(X, X1, X2))
tree_member_in_ga(X, tree(X1, Left, X2)) → U1_ga(X, X1, Left, X2, tree_member_in_ga(X, Left))
tree_member_in_ga(X, tree(X1, X2, Right)) → U2_ga(X, X1, X2, Right, tree_member_in_ga(X, Right))
U2_ga(X, X1, X2, Right, tree_member_out_ga(X, Right)) → tree_member_out_ga(X, tree(X1, X2, Right))
U1_ga(X, X1, Left, X2, tree_member_out_ga(X, Left)) → tree_member_out_ga(X, tree(X1, Left, X2))
↳ Prolog
↳ PrologToPiTRSProof
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ PiDP
↳ UsableRulesProof
↳ PiDP
↳ PiDPToQDPProof
TREE_MEMBER_IN_GA(X, tree(X1, Left, X2)) → TREE_MEMBER_IN_GA(X, Left)
TREE_MEMBER_IN_GA(X, tree(X1, X2, Right)) → TREE_MEMBER_IN_GA(X, Right)
↳ Prolog
↳ PrologToPiTRSProof
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ PiDP
↳ UsableRulesProof
↳ PiDP
↳ PiDPToQDPProof
↳ QDP
↳ NonTerminationProof
TREE_MEMBER_IN_GA(X) → TREE_MEMBER_IN_GA(X)
TREE_MEMBER_IN_GA(X) → TREE_MEMBER_IN_GA(X)